package com.hibase.core.page.service.pageuserconfig;


import javax.servlet.http.HttpServletResponse;

import org.springframework.transaction.annotation.Transactional;

import com.github.pagehelper.PageInfo;
import com.hibase.core.mybatis.service.BaseService;
import com.hibase.core.page.entity.pageuserconfig.PageUserConfig;
import com.hibase.core.page.entity.pageuserconfig.vo.PageUserConfigSearchVO;
import com.hibase.core.web.entity.OperationUserIdEntity;

/**
 * <p>
 * 菜单配置内容表 服务类
 * </p>
 *
 * @author junk
 * @since 2021-03-31
 */
@Transactional(readOnly = true, rollbackFor = Exception.class)
public interface PageUserConfigService extends BaseService<PageUserConfig> {

    /**
     * 查询菜单配置内容表列表
     *
     * @param searchVO
     * @return
     */
    PageInfo<PageUserConfig> selectPageUserConfigList(PageUserConfigSearchVO searchVO);

    /**
     * 改变菜单配置内容表记录
     *
     * @param entity
     * @return
     */
    void savePageUserConfig(PageUserConfig entity);

    /**
     * 查询菜单配置内容表详情
     *
     * @param id
     * @return
     */
    PageUserConfig viewPageUserConfig(String id);

    /**
     * 删除菜单配置内容表
     *
     * @param id
     */
    void deletePageUserConfig(String id);

    /**
     * 导出菜单配置内容表记录
     *
     * @param searchVO
     * @return
     */
    void exportPageUserConfig(PageUserConfigSearchVO searchVO, HttpServletResponse response);

    /**
     * @Title: PageUserConfigService
     * @Description:查询页面初始化条件;BY 用户, BY pageId, BY type
     * @author TimBrian
     * @since 2022年2月16日 上午11:33:03
     * @param searchVo
     * @return
     */
	PageUserConfig getSelectByUserIdAndPageId(OperationUserIdEntity searchVo);

}
